Post 5: Leaner times (19th July 2025)

Exactly a year since my last post to the blog, I can note the irony of the previous post being about how little work I had done recently being followed by the longest period without significant updates yet! This is a common trope in free-time projects, I’m sure.

However, it has been a far from fallow year. I continued to work in late summer and early autumn 2024 on the run-time, in particular, the integration of the Effection structured concurrency library, the REPL, and the representation of objects; and I reimplemented the ursa fmt command using the topiary formatter.

Through the autumn and winter, I continued to add Rosetta Code examples from time to time, mostly with the help of Daniel Shindler.

Then I didn’t do much for the first half of 2025, unfortunately! But in June, I watched a fun series on YouTube about creating a compiled, typed programming language in Python with llvmlite. This was impressive: however planned in advance, the presenter moves quickly, with very few mistakes, although the language is rather limited, and the implementation slap-dash. However, I found the “get it done” approach highly motivating, and finally found the energy for my third attempt at starting Ursa’s static type checking, which I’d previously tried and failed to get off the ground last September and this January.

This was released as 0.2.36 (be warned: it’s really not that useful yet).

After that, I have migrated the Ursa web site to a more maintainable toolchain, even if it’s still one written by and almost only used by me.

Let’s see how long it is until I’m blogging here again…